package com.jeehentor.generate.dto;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.io.Serial;
import java.io.Serializable;
import java.util.Map;

/**
 * @Description : 表单组件属性，具体可以查看element-plus文档
 * @Author : wzd
 * @Date : 2024/5/27 16:08
 * @Version : 1.0
 **/
@Data
@Schema(description="表单组件属性")
public class FormSchema implements Serializable {
    @Serial
    private static final long serialVersionUID = 2004347265839869614L;

    @Schema(description="唯一标识")
    private String field;
    @Schema(description="标题")
    private String label;
    @Schema(description="col组件属性")
    private Map<String,Object> colProps;
    @Schema(description="表单组件属性")
    private Map<String,Object> componentProps;
    @Schema(description="formItem组件属性")
    private Map<String,Object> formItemProps;
    @Schema(description="渲染的组件名称")
    private String component;
    @Schema(description="初始值")
    private Object value;
    @Schema(description="是否隐藏")
    private Boolean remove;
    @Schema(description="样式隐藏")
    private Boolean hidden;
    @Schema(description="远程加载下拉项")
    private Object optionApi;

}
